package com.leyou.item.controller;

import com.leyou.item.entity.Category;
import com.leyou.item.service.CategoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

//@CrossOrigin
@RestController
public class CategoryController {

    @Autowired
    private CategoryService categoryService;

    /**
     * 根据分类的父id查询分类列表
     * @RequestParam("pid") form表单类型数据使用，一般可以省略，但是如果此处理器要通过feign被调用，则不能省略
     * @PathVariable rest风格传参时，获取占位符中的数据 不能省略
     * @RequestBody 获取json格式数据使用 不能省略
     */
    @GetMapping("/category/of/parent")
    public ResponseEntity<List<Category>> findCategoryByPid(@RequestParam("pid") Long pid){
        List<Category> list = categoryService.findCategoryByPid(pid);
        //return ResponseEntity.status(HttpStatus.OK).body(list);//此句可以简化为如下写法
        return ResponseEntity.ok(list);
    }

    /**
     * 根据分类id的集合查询分类对象的集合
     */
    @GetMapping("/category/list")
    public ResponseEntity<List<Category>> findCategoriesByIds(@RequestParam("ids") List<Long> ids){
        List<Category> list = categoryService.findCategoriesByIds(ids);
        return ResponseEntity.ok(list);
    }


}
